//
//  ZRNetworkTool.h
//  Findif
//
//  Created by Cicel Chen on 2018/10/25.
//  Copyright © 2018年 Cicel Chen. All rights reserved.
//

#import <Foundation/Foundation.h>
#import <AFNetworking.h>

typedef enum : NSUInteger {
    GET,
    POST
} RequestType;

/** 请求结果的Block */
typedef void(^result)(BOOL success, id responseData);

@interface ZRNetworkTool : NSObject

@property(strong,nonatomic)AFHTTPSessionManager *manager;//
@property (retain, nonatomic) NSURLSessionDataTask* requestTask;//请求任务
#pragma mark - 实例化
+ (instancetype)sharedTool;
- (void)getNewsDataWithType:(int)type andPageno:(int)pageno resultWithBlock:(result)finishBlock;

#pragma mark - 发送短信验证码
- (void)sendMsgWithPhone:(NSString *)phone resultWithBlock:(result)finishBlock;
#pragma mark - 验证短信验证码
- (void)veriftCodeWithPhone:(NSString *)phone WithCode:(NSString *)code resultWithBlock:(result)finishBlock;
#pragma mark - 登录
- (void)loginWithPhone:(NSString *)phone WithLat:(NSString *)lat WithLon:(NSString *)lon resultWithBlock:(result)finishBlock;
#pragma mark - 获取Banner图
- (void)getBannerResultWithBlock:(result)finishBlock;
#pragma mark - 获取用户信息
- (void)getUserInfoResultWithUser_id:(NSString *)user_id WithExamine_user_id:(NSString *)examine_user_id WithBlock:(result)finishBlock;
#pragma mark - 根据分类id获取商品列表
- (void)getGoodsListResultWithCategory:(NSString *)ID WithIs_merchants_get:(NSString *)is_merchants_get
WithBlock:(result)finishBlock;
#pragma mark - 获取商品详情
- (void)getGoodsIfoResultWithGoodsID:(NSString *)ID WithBlock:(result)finishBlock;
#pragma mark - 根据商铺id获取商品列表
- (void)getGoodsListResultWithShopid:(NSString *)ID WithMerchants_goods_status:(NSString *)merchants_goods_status WithIs_merchants_get:(NSString *)is_merchants_get WithBlock:(result)finishBlock;
#pragma mark - 获取商铺列表
- (void)getShopListResultWithLat:(double)lat Withlon:(double)lon WithBlock:(result)finishBlock;
#pragma mark - 获取用户收藏商品列表
- (void)getUserCollectionListResultWithBlock:(result)finishBlock;
#pragma mark - 用户取消收藏商品
- (void)userCancelCollectionGoodsWithGoods_id:(NSString *)goods_id ResultWithBlock:(result)finishBlock;
#pragma mark - 获取商品评价列表
- (void)getGoodsCommentsListResultWithGoodsID:(NSString *)goods_id WithBlock:(result)finishBlock;
#pragma mark - 修改个人信息
- (void)updateUserInfoWithUpdate_Class:(NSString *)update_class WithUpdate_content:(NSString *)content WithBlock:(result)finishBlock;
#pragma mark - 获取年龄列表
- (void)getAgeListResultWithBlock:(result)finishBlock;
#pragma mark - 获取用户相册
- (void)getUserPhotoAlbumWithUser_id:(NSString *)user_id ResultWithBlock:(result)finishBlock;
#pragma mark - 删除用户相册
- (void)deleteUserPhotoAlbumWithAlbum_id:(NSString *)album_id ResultWithBlock:(result)finishBlock;
#pragma mark - 意见反馈
- (void)userFeedBackmWithConent:(NSString *)content ResultWithBlock:(result)finishBlock;
#pragma mark - 分类列表
- (void)getCategoryResultWithBlock:(result)finishBlock;
#pragma mark - 图片上传
- (void)uploadOneImgResultWithImg:(NSString *)img WithBlock:(result)finishBlock;
#pragma mark - 获取商铺审核状态
- (void)getMerchantsStatusResultWithBlock:(result)finishBlock;
#pragma mark - 验证后注册
- (void)setupResultWithPhone:(NSString *)phone WithLat:(NSString *)lat WithLon:(NSString *)lon WithDict:(NSDictionary *)dict WithBlock:(result)finishBlockk;
#pragma mark - 获取商品订单列表
- (void)getGoodsOrderListResultWithShopID:(NSString *)ID WithStatus:(NSString *)status WithBlock:(result)finishBlock;
#pragma mark - 获取用户余额
- (void)getUserBillResultWithBlock:(result)finishBlock;
#pragma mark - 用户获取商品订单列表
- (void)getGoodsOrderListResultWithUser_id:(NSString *)ID WithStatus:(NSString *)status WithBlock:(result)finishBlock;
#pragma mark - 获取极光IM初始化签名
- (void)getJgSignResultWithBlock:(result)finishBlock;
#pragma mark - 核销商品核销码
- (void)cancelMerchantsGoodsBarcodeResultWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark - 商铺添加优惠券
- (void)addMerchantsCouponsResultWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark - 商铺修改优惠券
- (void)editMerchantsCouponsResultWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark - 获取商铺优惠券列表
- (void)getMerchantsCouponsResultWithShop_id:(NSString *)shop_id WithUser_id:(NSString *)user_id WithBlock:(result)finishBlock;
#pragma mark - 商铺删除优惠券
- (void)deleteMerchantsCouponsResultWithShop_id:(NSString *)shop_id WithGoods_id:(NSString *)goods_id WithBlock:(result)finishBlock;
#pragma mark - 修改商铺信息
- (void)editMerchantsResultWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark - 修改商铺状态
- (void)editMerchantsResultWithMerchants_status:(NSString *)merchants_status WithBlock:(result)finishBlock;
#pragma mark - 商铺详情
- (void)getMerchantsInfoWithShop_id:(NSString *)shop_id WithBlock:(result)finishBlock;
#pragma mark - 搜索订单
- (void)searchMerchantsCouponsResultWithSearch_name:(NSString *)search_name WithBlock:(result)finishBlock;
#pragma mark - 搜索商品
- (void)searchGoodsResultWithSearch_name:(NSString *)search_name WithBlock:(result)finishBlock;
#pragma mark - 商铺添加商品
- (void)addMerchantsGoodsResultWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark - 修改商品信息
- (void)editMerchantsGoodsResultWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark - 用户领取商铺优惠券
- (void)userReceiveMerchantsCouponsResultWithCoupon_id:(NSString *)Coupon_id WithBlock:(result)finishBlock;
#pragma mark - 获取用户拥有的优惠券
- (void)getUserCouponsResultWithMerchants_id:(NSString *)merchants_id WithBlock:(result)finishBlock;
#pragma mark - 获取确认订单用户拥有的优惠券
- (void)getUserCouponsResultWithMerchants_id:(NSString *)merchants_id WithGoods_Category_ID:(NSString *)goods_category_id WithGoods_type:(NSString *)goods_type WithCoods_id:(NSString *)goods_id WithGoods_field:(NSString *)goods_field WithBlock:(result)finishBlock;
#pragma mark - 获取商品拼团场次
- (void)getMerchantsGoodsFieldResultWithGoodsId:(NSString *)goods_id WithChoose_date:(NSString *)choose_date WithBlock:(result)finishBlock;
#pragma mark - 修改商品状态
- (void)changeGoodsStatusResultWithGoods_id:(NSString *)goods_id WithMerchants_goods_status:(NSString *)merchants_goods_status WithBlock:(result)finishBlock;
#pragma mark - 获取商铺余额
- (void)getMerchantsBillResultWithBlock:(result)finishBlock;
#pragma mark - 获取商铺余额明细
- (void)getMerchantsBillListsResultWithBlock:(result)finishBlock;
#pragma mark - 获取用户余额明细
- (void)getUserBillListsResultWithBlock:(result)finishBlock;
#pragma mark - 绑定银行卡
- (void)addBingBankCardResultWithBank_card_account_holder:(NSString *)bank_card_account_holder WithBank_card_no:(NSString *)bank_card_no WithBank_card_phone:(NSString *)bank_card_phone WithBlock:(result)finishBlock;
#pragma mark - 获取商铺余额明细
- (void)getBingBankListsResultWithBlock:(result)finishBlock;
#pragma mark - 发起提现
- (void)initiateWithdrawalResultWithInfo:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark - 获取店铺相册
- (void)getMerchantsPhotoAlbumListsWithShop_id:(NSString *)shop_id WithIs_merchants_get:(NSString *)is_merchants_get ResultWithBlock:(result)finishBlock;
#pragma mark - 删除店铺相册
- (void)deleteMerchantsPhotoAlbumWithShop_id:(NSString *)shop_id WithID:(NSString *)ID ResultWithBlock:(result)finishBlock;
#pragma mark - 添加店铺相册
- (void)addMerchantsPhotoAlbumWithShop_id:(NSString *)shop_id WithImg:(NSString *)img ResultWithBlock:(result)finishBlock;
#pragma mark - 取消订单
- (void)cancelGoodsOrderWithGood_id:(NSString *)good_id ResultWithBlock:(result)finishBlock;
#pragma mark - 删除订单
- (void)deleteGoodsOrderWithGood_id:(NSString *)good_id ResultWithBlock:(result)finishBlock;
#pragma mark - 获取用户评价商品规则
- (void)getMerchantsCommentsRulesResultWithBlock:(result)finishBlock;
#pragma mark - 用户评价商品
- (void)commentsMerchantsGoodsWithDictory:(NSDictionary *)dict ResultWithBlock:(result)finishBlock;
#pragma mark -查询用户身份
- (void)byPhoneGetIdentityWithPhone:(NSString *)phone ResultWithBlock:(result)finishBlock;
#pragma mark -获取用户系统通知
- (void)getUserNoticeWithUser_id:(NSString *)user_id ResultWithBlock:(result)finishBlock;
#pragma mark -获取用户系统是否已读
- (void)judgeUserNoticeWithUser_id:(NSString *)user_id ResultWithBlock:(result)finishBlock;
#pragma mark -更新用户通知状态 未读->已读
- (void)updateUserNoticeWithNoti_id:(NSString *)noti_id ResultWithBlock:(result)finishBlock;
#pragma mark -设置开团推送
- (void)setOpenGroupRemindedWithGoods_id:(NSString *)goods_id ResultWithBlock:(result)finishBlock;
#pragma mark -获取分享信息
- (void)getUserShareSystemWithCategory_id:(NSString *)category_id ResultWithBlock:(result)finishBlock;
#pragma mark -获取商品订单详情
- (void)getGoodsOrderInfoWithOrder_id:(NSString *)order_id ResultWithBlock:(result)finishBlock;
#pragma mark -关注用户
- (void)attentionUseroWithUser_id:(NSString *)attention_user_id ResultWithBlock:(result)finishBlock;
#pragma mark -取消关注
- (void)cancelAttentionUserUser_id:(NSString *)attention_user_id ResultWithBlock:(result)finishBlock;
#pragma mark -获取关注列表
- (void)getAttentionUserUser_id:(NSString *)attention_user_id WithSearch:(NSString *)search ResultWithBlock:(result)finishBlock;
#pragma mark -获取粉丝列表
- (void)getFansUserUser_id:(NSString *)attention_user_id WithSearch:(NSString *)search ResultWithBlock:(result)finishBlock;
#pragma mark -常见问题
- (void)getCommonProblemsListResultWithBlock:(result)finishBlock;
#pragma mark -获取默认时间
- (void)getMerchantsGoodsDefaultTimeWithBlock:(result)finishBlock;
#pragma mark -获取用户动态列表
- (void)getUserDynamicWithBlock:(result)finishBlock;
#pragma mark -发布用户动态
- (void)initiateDynamicWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -评论动态
- (void)InitiateDynamicCommentWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -获取动态评论列表
- (void)getDynamicCommentsWithID:(NSString *)ID WithBlock:(result)finishBlock;
#pragma mark -点赞动态
- (void)initiateDynamicPraiseWithID:(NSString *)ID WithBlock:(result)finishBlock;
#pragma mark -取消点赞动态
- (void)deleteDynamicPraiseWithID:(NSString *)ID WithBlock:(result)finishBlock;
#pragma mark -创建社团
- (void)createGroupWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -获取用户社团列表
- (void)getUserGroupListWithUser_idt:(NSString *)user_id WithBlock:(result)finishBlock;
#pragma mark -判断用户是否创建社团
- (void)judgeUserIsCreateGroupWithUser_idt:(NSString *)user_id WithBlock:(result)finishBlock;
#pragma mark -获取随机推荐社团列表
- (void)getRandGroupListWithUser_idt:(NSString *)user_id WithBlock:(result)finishBlock;
#pragma mark -获取社团详情
- (void)getGroupInfoWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -获取社团成员列表
- (void)getGroupMembersListWithGroup_id:(NSString *)group_id WithBlock:(result)finishBlock;
#pragma mark -邀请用户加入社团
- (void)invitationJoinGroupWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -邀请用户加入社团
- (void)addTopicWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -获取话题列表
- (void)getTopicListWithPromulgator_id:(NSString *)promulgator_id WithBlock:(result)finishBlock;
#pragma mark -发布社团公告
- (void)addGroupNoticeWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -获取社团公告列表
- (void)getGroupNoticeListWithGroup_id:(NSString *)group_id WithBlock:(result)finishBlock;
#pragma mark -编辑社团公告
- (void)editGroupNoticeWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -删除社团公告
- (void)deleteGroupNoticeWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -修改社团资料
- (void)updateGroupWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -上传社团相册图片
- (void)addGroupPhotoWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -删除社团相册图片
- (void)deleteGroupPhotoWithID:(NSString *)ID WithBlock:(result)finishBlock;
#pragma mark -获取社团相册列表
- (void)getGroupPhotoListWithGroup_id:(NSString *)group_id WithBlock:(result)finishBlock;
#pragma mark -上传社团相册图片
- (void)addGroupActivityGoodsWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -获取社团活动商品列表
- (void)getGroupActivityGoodsListWithGroup_id:(NSString *)group_id WithBlock:(result)finishBlock;
#pragma mark -获取已参加的社团活动商品列表
- (void)getMyGroupActivityGoodsWithGroup_id:(NSString *)group_id WithBlock:(result)finishBlock;
#pragma mark -获取社团活动商品详情
- (void)getGroupActivityGoodsInfoWithID:(NSString *)ID WithBlock:(result)finishBlock;
#pragma mark -获取社团通知
- (void)getGroupInformWithUser_id:(NSString *)user_id WithBlock:(result)finishBlock;
#pragma mark -购买商铺商品
- (void)buyMerchantsGoodsWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -更改社团通知状态
- (void)updateGroupInformWithID:(NSString *)ID WithAudit_status:(NSString *)status WithBlock:(result)finishBlock;
#pragma mark -获取社团通知详情
- (void)getGroupInformInfoWithID:(NSString *)ID WithBlock:(result)finishBlock;
#pragma mark -搜索联系人
- (void)searchContactsWithSearch_str:(NSString *)search WithBlock:(result)finishBlock;
#pragma mark -用户申请加入社团
- (void)applyForJoinGroupWithGroup_id:(NSString *)group_id WithBlock:(result)finishBlock;
#pragma mark -设置社团消息免打扰
- (void)setGroupNodisturbWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -解散社团
- (void)deleteGroupWithGroup_id:(NSString *)group_id WithBlock:(result)finishBlock;
#pragma mark -退出社团
- (void)exitGroupWithGroup_id:(NSString *)group_id WithBlock:(result)finishBlock;
#pragma mark -屏蔽用户动态
- (void)shieldUserDynamicWithShield_user_id:(NSString *)shield_user_id WithBlock:(result)finishBlock;
#pragma mark -举报用户动态
- (void)reportUserDynamicWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -社长移除社团成员
- (void)deleteGroupMembersWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -取消社团活动商品
- (void)deleteGroupActivityGoodsWithID:(NSString *)ID WithBlock:(result)finishBlock;
#pragma mark -禁言社团成员
- (void)bannedGroupMemberWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -搜索用户
- (void)selectUserWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -获取随机推荐社团列表
- (void)getRandGroupListWithBlock:(result)finishBlock;
#pragma mark -搜索社团
- (void)selectGroupWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -获取话题评论列表
- (void)getTopicCommentListWithTopic_id:(NSString *)topic_id WithBlock:(result)finishBlock;
#pragma mark -用户评论话题
- (void)userCommentTopicWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -搜索社团成员列表
- (void)selectGroupMembersWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -获取社团成员禁言和免打扰状态
- (void)getGroupMemberBannedAndTouserWithGroup_jg_gid:(NSString *)group_jg_gid WithBlock:(result)finishBlock;
#pragma mark -获取社团今日活动
- (void)getGroupTodayActivityWithGroup_jg_gid:(NSString *)group_jg_gid WithBlock:(result)finishBlock;
#pragma mark -获取社团今日话题
- (void)getGroupTodayTopicWithGroup_jg_gid:(NSString *)group_jg_gid WithBlock:(result)finishBlock;
#pragma mark -获取话题详情
- (void)getTopicInfoWithID:(NSString *)ID WithBlock:(result)finishBlock;
#pragma mark -获取动态评论详情更多
- (void)getDynamicCommentsInfoWithDynamic_id:(NSString *)dynamic_id WithBlock:(result)finishBlock;
#pragma mark -获取话题评论详情更多
- (void)getTopicCommentInfoWithTopic_id:(NSString *)topic_id WithBlock:(result)finishBlock;
#pragma mark -查看关注状态
- (void)checkAttentionStatusWithAttention_user_id:(NSString *)attention_user_id WithBlock:(result)finishBlock;
#pragma mark -删除社团通知
- (void)deleteGroupInformWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -查看社团是否存在
- (void)checkGroupStatusWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -获取屏蔽用户列表
- (void)getShieldUserListWithBlock:(result)finishBlock;
#pragma mark -取消屏蔽
- (void)deleteShieldUserWithUser_id:(NSString *)user_id WithBlock:(result)finishBlock;
#pragma mark -删除用户动态
- (void)deleteDynamicWithID:(NSString *)ID WithBlock:(result)finishBlock;
#pragma mark -获取我发布的动态列表
- (void)getMyDynamicDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -获取积分商城列表
- (void)getIntegralShopListWithType:(NSString *)type WithBlock:(result)finishBlock;
#pragma mark -获取用户积分列表
- (void)getUserIntegralWithDate_time:(NSString *)date_time WithBlock:(result)finishBlock;
#pragma mark -签到积分
- (void)signIntegralWithBlock:(result)finishBlock;
#pragma mark -积分兑换
- (void)integralExchangeWithIntegral_rules_id:(NSString *)integral_rules_id WithBlock:(result)finishBlock;
#pragma mark -批量修改个人信息
- (void)updateUserInfoAllWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -shareIntegral
- (void)shareIntegralWithBlock:(result)finishBlock;
#pragma mark -根据手机号获取用户ID
- (void)getUserIdByPhoneWithPhone:(NSString *)phone WithBlock:(result)finishBlock;
#pragma mark -检测商品核销状态
- (void)monitorMerchantsGoodsBarcodeWithDict:(NSDictionary *)dict WithBlock:(result)finishBlock;
#pragma mark -获取同类商品列表
- (void)getSimilarMerchantsGoodsListsWithGoods_id:(NSString *)goods_id WithBlock:(result)finishBlock;
#pragma mark -获取用户余额明细详情
- (void)getUserBillInfoWithBill_id:(NSString *)bill_id WithBlock:(result)finishBlock;
#pragma mark -获取商铺余额明细详情
- (void)getMerchantsBillInfoWithBill_id:(NSString *)bill_id WithBlock:(result)finishBlock;

@end
